The problem of learning temporal dependencies from streams of multivariate discrete events arises in a wide variety of applications. For example, the firing patterns of neurons, gene expression data, file access patterns in operating systems, sales patterns at retailers, browsing patterns on the web, and activity patterns on social networks, can all be viewed as streams of events over time. Events carry both information about their timing and their type (e.g., identity of neuron that fired, customer ID and SKU of sale, file identifier and access type etc.), and the dependencies between events can be on both their timing and their types.
While graphical models such as Bayesian networks and dependency networks are widely used to model the dependencies between variables, they do not directly model time. Dynamic Bayesian Networks (DBNs) allow temporal modeling in discrete time, and Continuous Time Bayesian Networks (CTBNs) model the joint trajectories of discrete valued variables in continuous time. Thus, modeling event streams with DBNs requires choosing a discretization of time, while modeling them with CTBNs requires further modeling assumptions in order to encode event sequences as sequences of state transitions of some set of discrete variables.